package com.wzy.wzyblog.service;

import com.wzy.wzyblog.po.Blog;
import com.wzy.wzyblog.vo.BlogQuery;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import java.util.List;
import java.util.Map;

public interface BlogService {

//    查询blog
    Blog getBlog(Long id);
//    删除
    void deleteBlog(Long id);
//    修改
    Blog updateBlog(Long id,Blog blog);
//    保存
    Blog saveBlog(Blog blog);
//    分页                                 查询参数条件封装（Type等）
    Page<Blog> listBlog(Pageable pageable, BlogQuery blog);
    //    分页
    Page<Blog> listBlog(Pageable pageable);
//        推荐的博客列表
    List<Blog> listRecommendBlogTop(Integer size);
    //          根据字符串查询
    Page<Blog> listBlog(String query,Pageable pageable);
    //    前段html转换
    Blog getAndConvert(Long id);
//       根据tag id查询的分页
    Page<Blog> listBlog(Long tagId,Pageable pageable);
//     返回 <年份，blog对象>  所有数据不需要参数
    Map<String,List<Blog>> archiveBlog();
//       统计blog总数
    Long countBlog();








}
